package com.lanyan.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
import com.lanyan.system.domain.Estate;
import com.lanyan.system.domain.vo.EstateVo;
import org.apache.ibatis.annotations.Param;

/**
 * 小区Service接口
 *
 * @author lanyan
 * @date 2024-11-26
 */
public interface IEstateService extends IService<Estate>
{
    /**
     * 查询小区
     *
     * @param estateId 小区主键
     * @return 小区
     */
    public Estate selectEstateByEstateId(Long estateId);

    /**
     * 查询小区列表
     *
     * @param estate 小区
     * @return 小区集合
     */
    public List<Estate> selectEstateList(Estate estate);

    /**
     * 查询小区Vo列表
     *
     * @param estate 小区
     * @return 小区集合
     */
    public List<EstateVo> selectEstateVoList(Estate estate);

    /**
     * 新增小区
     *
     * @param estate 小区
     * @return 结果
     */
    public boolean insertEstate(Estate estate);

    /**
     * 修改小区
     *
     * @param estate 小区
     * @return 结果
     */
    public boolean updateEstate(Estate estate);

    /**
     * 批量删除小区
     *
     * @param estateIds 需要删除的小区主键集合
     * @return 结果
     */
    public boolean deleteEstateByEstateIds(Long[] estateIds);

    /**
     * 删除小区信息
     *
     * @param estateId 小区主键
     * @return 结果
     */
    public boolean deleteEstateByEstateId(Long estateId);

    public List<Estate> getSort(String name, String latitude, String longitude);
}
